home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / The World of Computer Software.iso / dec92.zip / 1012098A < prev    next >
Text File  |  1992-05-26  |  1KB  |  38 lines

  1. /*    LISTING 1. DOSTBL1.H                */
  2. /*  DFA table for Restricted DOS Pathname     */
  3.  
  4. /* Application functions included in resdos_stt */
  5. extern short alpha(char *);
  6. extern short alphanum(char *);
  7. extern short appendpath(char *);
  8. extern short block(char *);
  9. extern short cleanup(char *);
  10. extern short errmsg(char *);
  11. extern short isdot(char *);
  12. extern short isEOR(char *);
  13. extern short isFS(char *);
  14. extern short isGS(char *);
  15. extern short pushchar(char *);
  16. extern short savedrive(char *);
  17. extern short saveext(char *);
  18. extern short savefname(char *);
  19. extern short skip(char *);
  20.  
  21. /* The state table for restricted DOS pathnames    */
  22. DFATBL syndos_stt[] = {
  23. /* 0 */     { alpha,   1,  ERR,  pushchar,    errmsg},
  24. /* 1 */  { isGS,    2,  ERR,  savedrive,   errmsg},
  25. /* 2 */  { isFS,    3,  ERR,  appendpath,  errmsg},
  26. /* 3 */  { alpha,   4,  ERR,  pushchar,    errmsg},
  27. /* 4 */  { isFS,    3,   5,   appendpath,  skip  },
  28. /* 5 */  { alphanum,4,   6,   pushchar,    skip  },
  29. /* 6 */  { isdot,   8,   7,   savefname,   skip  },
  30. /* 7 */  { isEOR,   13, ERR,  savefname,   errmsg},
  31. /* 8 */  { alphanum,9,  ERR,  pushchar,    errmsg},
  32. /* 9 */  { alphanum,11,  10,  pushchar,    skip  },
  33. /* 10 */ { isEOR,   13, ERR,  saveext,     errmsg},
  34. /* 11 */ { alphanum,12,  12,  pushchar,    skip  },
  35. /* 12 */ { isEOR,   13, ERR,  saveext,     errmsg},
  36. /* 13 */ { isEOR,  OUT, ERR,  cleanup,     errmsg},
  37. };
  38.